perm filename NSF3D[NSF,BGB]1 blob sn#059750 filedate 1973-08-23 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00015 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001	   VALID 00012 PAGES
C00003 00002	
C00005 00003	ABSTRACT:
C00006 00004	1. IDEAS AND WORK ALREADY DONE.
C00014 00005	2. WHAT WE PROPOSE TO DO.
C00020 00006		The micro language  is composed of  a small set  of primitive
C00026 00007		Besides language inputs,  a  geometric modeling system should
C00031 00008	WHAT WE PROPOSE TO DO  -  An Itemized Shopping List.
C00034 00009	3. PREVIOUS WORK AT STANFORD.
C00037 00010	4. RELATION TO WORK DONE ELSEWHERE.
C00044 00011	5. FACILITIES AT STANFORD A.I. LAB
C00047 00012	
C00049 00013	BUDGET DETAIL
C00052 00014	6.  BIOGRAPHIES.
C00056 00015	7.  BIBLIOGRAPHY.
C00064 ENDMK
C⊗;




     RESEARCH PROPOSAL SUBMITTED TO THE NATIONAL SCIENCE FOUNDATION



                                 BY



                     Computer Science Department

                  School of Humanities and Sciences

                         Stanford University



				IN



     COMPUTER AIDED MECHANICAL DRAWING OF THREE DIMENSIONAL OBJECTS





                    Co-Principal Investigators: 



                            JOHN McCARTHY

                    Professor of Computer Science



                            BRUCE BAUMGART

                Research Associate in Computer Science





                      This is new request to NSF
             The desired starting date is January 1, 1974.
          The total amount requested for 24 months is $ 214,881
ABSTRACT:

This is  a request for  a grant of  $ 214,881 to  support a  two year
research  program  in  computer  aided  mechanical  drawing of  three
dimensional objects.

CONTENTS:

	1. Ideas and work already done.

	2. Figures.

	3. What we propose to do.

	4. Previous work at Stanford.

	5. Relation to work done elsewhere.

	6. Facilities at Stanford AI Lab.

	7. Budget.



ENCLOSURES:

	1. Flip book of mechanical arm animation.

1. IDEAS AND WORK ALREADY DONE.

	The proposed work  is based on  the following ideas  and work
already done:

i. Explicit 3D Object Representation.

	An effective  way of  obtaining 2D  mechanical drawings of  a
three dimensional  object is to derive the  drawings from an explicit
computer model of  the three dimensional  object.  The  orthographic,
isometric  and perspective  projections  of the  object are  obtained
automatically  from  the  three  dimensional  description;  with  the
hidden lines  of the object  either eliminated,   dashed or  thinned;
and  with  the  appropriate labels,    dimensions,    comments,   and
arrowheads indicated. Figure-1 (all figures follow this section).

ii. Object Generation from Physical Description.

	A convenient way of  making an explicit computer model  of an
object  is to simulate  the process of  building the  object; that is
the  description  of   how  to  build  an   object  is  an   implicit
representation of the  object.  For example it is  easier to describe
Figure-2  as a  dodecahedron with a regular five  pointed star shaped
hole cut through it,  than it is to draw the figure  with a light pen
or to list the loci of its vertices.

iii. Language Extension.

	Rather than developing  new languages for  geometric modeling
and  mechanical drawing,   we believe  it is  best to extend  the old
languages: FORTRAN,    ALGOL and  LISP.    The elements  of  language
extension  include new  data types  for  the language,   general  low
level  primitives  for  manipulating  the  new  data  types,   and  a
convenient set of higher level operations.  The division  of the work
into high  level operations defined in terms  of low level primitives
is an  important part  of the  design because  it isolates  the  data
structure manipulating code.

iv. Object Representation from Physical Measurement,

	Another way to  get an explicit  computer model of  an object
is to derive  it from measurements made on an actual physical object,
2D drawing, or picture.  For example, the physical object might  be a
clay model  of the  thing being  designed. We  believe that  only the
lack  of appropriate  software  is preventing  the use  of television
cameras as an inexpensive, accurate, and automatic  means of entering
graphical data into a computer. Figure-3.

V. Prejudice against Pens for Interactive Graphics Control.

	It has been  our recent experience that a  distinction should
be  made between using a  light pen (or sonic  pen, Rand tablet, etc)
for graphics input and using it for graphics editing and  control. We
observe  that when  adequate  keyboard edit,    control and  language
conventions  are provided the use  of the light  pen diminishs to the
point where it is  only demonstrated to visitors who  expect graphics
to involve light  pens. One reason for this is  that when an operator
can do something exactly in afew  keystrokes he does not bother  with
picking up the pen,  aquiring the pen  tracker, and drawing; a second
reason  is that a pen  is necessarily based on  2D screen coordinates
in which overlapping  portions of a  3D drawing  can not be  directly
distinguished with a  light pen. Pen based editing  systems require a
keyboard  or button box in  any event,  so we  argue that an operator
who can  control and alter  a drawing  with his  hands always in  the
locality of the keyboard will  be more efficient than an operator who
has to use both a keyboard and a  pen. However, the use of a pen  (or
Rand  Tablet)  for  graphics  input,    such  as  tracing  chromosome
photographs into  the computer, is justifiable  and expedient but not
directly relevant to  editing a  3D mechanical design.  That is  pens
are functionally replacible by either cameras or keybaords.

vi. Mechanical Simulation.

	Information such  as the  degrees of  freedom  of motion  are
included in  the object description and  can be used to  get pictures
of  objects  in  different  positions,   as  is  demonstrated  in the
(enclosed) flip book  animation of a  mechanical arm turning a  block
over. Mechanical information can also be used  to constrain the shape
of a part  in its  desired place; or  to find  the space  potentially
occupied by a moving part.

vii. Photometric Simulation.

	Photometric information  such as the  location and  nature of
light  sources and  the light scattering  properties of  the objects'
surfaces can be included in the  model and used to compute the actual
appearance of solid opaque objects. Figure-4.
2. WHAT WE PROPOSE TO DO.

	We  propose to  represent  and simulate  solid  objects in  a
computer  for the sake  of mechanical design  and mechanical drawing.
Our two year goal  will be to automate as  much as possible the  task
of  creating  and altering  three  dimensional  data structures  from
which  mechanical drawings  can  be derived.  The overall  project to
date has  been called  "geometric modeling" a  term which  we use  to
refer to  our particular combination of computer  graphics,  physical
world modeling,   image processing  and geometry.   Accordingly,  the
details of the  work we propose doing  will be presented in  terms of
the elements comprising a Geometric Modeling System,  GMS.

	Like  a computer,    the four  main elements  of  a geometric
modelling system are memory, process, input and output. Starting with
memory, there are  the problems of representation (how  to describe a
physical object);  accessing (how to find a particular description by
name,   by location,  or by  whether it  is currently  in view);  and
efficiency (how  to keep the  size of storage  space down and  how to
dynamically allocate fast and slow memory resources).
	
	The presently  implemented explicit object  representation is
based on  polyhedron models of solid rigid  objects.  A simple object
called a body  is defined by  a surface  shell composed of  vertices,
edges and  faces that satisfies the  Euler equation, V  - E + F  = 2;
such  polyhedron bodies  are combined to  form compound  objects.  At
present,  curved objects are represented by  approximating them using
a  polyhedron  composed of  a  sufficient  number  of flat  polygonal
faces.   We propose  to  further develope  the appearance  of  curved
objects by automating the  assignment of polygonal facets to  a given
curved  surface.   Other  current  representation  problems  that  we
propose working on  include constructing  efficient (and  compatible)
object labelling, handling  mechanical properties  of an  object, and
better representing compound and flexible objects.

	A final  representation issue  we would  study is  that of  a
format   for  communication  of  three   dimensional  models  between
modeling systems.   Although,   we believe  that it is  too early  to
propose a standard  format; it is desirable to  design and promulgate
a  format as  simple, but as  inclusive as  possible; and  it is also
desirable to  develope formatible  I/O routines so  that new  formats
can be sent or received.

	The  usual  input  devices  to  a geometric  modeling  system
include keyboards,  light-pens,   joy-sticks,  buttons,  cameras  and
film scanners; of  which the most  important to this proposal  is the
keyboard because it  is currently the best device for language input.
Indeed, we believe  that we can  demonstrate that  a system based  on
keyboards can do  geometric control and editing better  than a system
based on  both a light pen and a keyboard.  With respect to language,
we are proposing two projects: first, we would  extend the programing
languages: FORTRAN,   ALGOL and LISP; and second,   we would continue
to develope our interactive edit  and control language. The  elements
of a language extension  include new data types (the  "memory" of our
system);  a  micro  language  of  primitive  operations and  a  macro
language of more complex operations.

	The micro language  is composed of  a small set  of primitive
functions  that  invoke  the  only  subroutines  allowed to  directly
create and alter  the data structure.  All the geometric  processors,
editors,  input,     output   and  higher  language   operations  are
implemented  in  terms of  these fewer  than  fifty primitives.   The
reason for having a two  level system is to isolate and  minimize the
amount of  code that is  necessarily dependent on  the implementation
details of the particular higher  level language. Furthermore, it  is
possible to construct  primitives that are complete and  general with
respect   to  fundamental  principles  in   polyhedron  topology  and
geometry. For example,   we now have a  set of Euler primitives  that
can generate  any Eulerian polyhedron (and  only Eulerian polyhedra);
as  well as a set  of Euclidean primitives for  applying the group of
Euclidean  transformations.  With more  good  luck,    we  intend  to
isolate sets of primitives for mechanics and for image formation.

	The  macro  level  of  language  extension  is  comprised  of
operations that make  it convenient to simulate building a mechanical
model of an  object. The  present macro level  includes an  operation
for  "sweeping"  edges  into  faces,    and  faces  into  solids;  an
operation  for "glueing" surfaces together;  an operation for passing
"cutting"  planes  thru an  object;  and  a  most  powerful  trio  of
operations   for  forming  the   volume  union,     intersection  and
difference of two given  polyhedra. Since polyhedra  can be taken  as
either bounding a  finite solid volume  or a finite empty  volume; we
have found it  convenient to draw some objects indirectly by building
their holes  and  intersecting  the  holes with  their  simple  outer
shape.   Further macro  operations we propose  to code  would include
more   "imaginery"   ones  for   bending,     constraining,  filling,
enveloping, and  expanding  upon a  skeleton; as  well  as some  more
"realistic"  operations that would  model regular machine  shop tools
such as  a lathe,   punch  and milling  machine; as  well as  machine
building processes such as welding, fastening and assembly. 

	Our second  language project  is oriented towards   edit  and
control.    The  main  differences  between  an interactive  graphics
editor and a graphics programming language is that an  editor carries
along its  working context  so that  most arguments  and data  do not
have to  be explicitly named because they happen to be "at the top of
the stack" and are visibly intensified or otherwise  indicated on the
display screen.  The advantage of the interactive  editor is that the
user is relieved of having to coin and call names of things,  however
the disadvantage  is  that he  can not  develope  subroutines of  the
power  available in  a programming  language which  provides notation
for  procedures, arguments,  and  variables.  We  plan  to  keep  the
programming  language  level  distinct  from  the  control  and  edit
language  level;  although  it should  be  clear  that  both language
levels are calling the same primitive execution routines.
	Besides language inputs,  a  geometric modeling system should
have  a way of  reading data that  is already in  graphical form. For
such input,  we propose using  a television camera. For example,   we
already have developed video  intensity contouring to rapidly provide
the  edges of  an  image in  a form  available for  graphics editing.
Although video  input  per  se is  of  secondary importance  to  this
proposal,  we happen to  have such hardware and software available at
Stanford and can make good use  of it with little additional  effort.
Furthermore,   video  (or  visual)  computer input  has  considerible
promise as a major input device of future computers.

	The third  element  of a  geometric modeling  system are  its
(software)  processors.  There  are language  processors,  mechanical
simulators,  locus solvers,  image analysis and image synthesis,   as
well  as that  process  quite central  to  three dimensional  drawing
which  is hidden line  (and surface)  elimination.  We  have a hidden
line eliminator  which combines  several of  the existing  techniques
and which can  generate both line drawings and  video images; also we
have reason to believe that further  work on our design will yield  a
hidden  eliminator  that   can  handle  apparently   curved  objects,
generate shadows,  use the coherence between  successive images,  and
still be fast  without special purpose hardware.   Since the  purpose
of  the processors  just mentioned  should be  sufficiently clear  we
shall  skip detailing  their algorithms  and implementation, although
this will comprise  the bulk of the  work and publication we  propose
to do.

	The fourth and  final element of  our modeling system  is the
output,    which  includes  dynamic  CRT  display,    video  display,
hardcopy printing, as well as  magnetic tape. Although mundane,   the
numerical object descriptions on  conventional (non display) computer
media  like magnetic  tape is  important in  making the output  of an
interactive   display  system   available   for   further   automatic
processing or  communication. On the  other hand, a  high quality CRT
that can display characters and vectors  is now and shall remain  the
primary tool  requiste to  developing interactive graphics  software;
consquently nearly a third of the budget  included with this proposal
is allocated to aquiring such  a CRT to enhance our existing  display
system. The most  promising alternative to a CRT is  a video display;
however present  day video display systems would require a very large
computer and fast  memory to  achieve the resolution  and speed of  a
CRT display.
WHAT WE PROPOSE TO DO  -  An Itemized Shopping List.

	Ignoring the overall system organization and fine details,
the goals of the proposed project are summarized in the following
shopping list:

Items partially in hand.

	1. Representation of solid rigid three dimensional polyhedra.
	2. Language extension of geometric primitives.
	3. Language extension of object building operations.
	4. Polyhedron object hidden line (and surface) eliminator.
	5. Geometric editor.

Items within one year's work.
	
	6. Generation of mechanical drawings from geometric models.
	7. Representation for the appearance of curved objects.
	8. Representation for flexible objects.
	9. Video acquisition of two dimensional  drawings.
	10. Mechanical simulation and animation.

Second year and/or elective Items.

	11. Generation of high quality mechanical drawings.
	12. Development of a remote display terminal version.
	13. Development of a standard FORTRAN version.
	14. Mechanical drawings for a special area of engineering;
	    (pipefitting, screw threading, mining, or whatever).

Basic research items.

	15. Video acquisition of three dimensional objects.
	16. Photometric simulation - shadows, multiple light sources;
	    for generation of high quality video appearance.

	The most conservative estimate of  our potential achievements
for  the next two  years would include  the first  five items listed,
since  substantial   work  has   already  been   done.   Intermediate
expectations would include making  considerable progress and original
contribution  with respect to the  items one through  ten; as well as
doing  one  of the  five  items  numbered  eleven  through  fourteen.
Optimistic  expectation would  be  to finish  everything  though item
sixteen.
3. PREVIOUS WORK AT STANFORD.

	This proposal  is based  on work  by Bruce  G. Baumgart as  a
graduate  student. Mr. Baumgart expects  to complete his dissertation
entitled "Geometric  Vision" in  early 1974  and will  continue as  a
research associate on receiving his degree.

	This work includes GEOMED,   a Geometric Editor,  which would
be  the  prototype of  the mechanical  drawing  system we  propose to
build.    GEOMED  is  a  3D  drawing  program  (controled  mostly  by
keyboard);  that  can  construct  arbitrary  polyhedral  objects  and
display them with hidden  lines eliminated.   GEOMED also accepts  TV
images and can form polyhedron models consistent with such images.

	The  subroutines and  data  structures  of GEOMED  have  been
embedded  in  LISP and  SAIL  (Stanford Algol)  to  provide geometric
languages  for   physical   world  modeling   and   physical   action
simulation. The  current embedded  versions of  GEOMED fall  short in
that  adequate  error  recovery and  memory  allocation  is currently
lacking.

	The image processing part of  Mr.  Baumgart's work lies  in a
program  named CRE,    standing for  Contour,   Region,   Edge  image
representation.   CRE  converts  a  sequence  of  digital  television
images  into a  contour  edge data  structure  for interpretation  by
other programs.   Finally, there is TVFONT, which is a version of CRE
for making  type font  bit arrays  from television  images,   or  for
rescaling existing fonts.
4. RELATION TO WORK DONE ELSEWHERE.

	The work  proposed here has  been strongly influenced  by the
pioneering computer graphics  work of Larry Roberts, Steven Coons and
Ivan Sutherland done  at the  Massachusetts Institute of  Technology,
Lincoln  Laboratory, and  Harvard  University; as  well  as the  more
recent  work of  Sutherland, Evans,  Warnock, Watkins,  Archuleta and
Gouraud at the  University of Utah.   In fact,  Mr. Baumgart did  his
undergraduate thesis  (at Harvard, 1968)  with Prof.   Sutherland, on
development  of  a  three   dimensional  display  system  which   was
subsequently moved  to Utah. Another  influence on the  proposed work
has been  the research in Artificial  Intelligence,  computer vision,
programming languages and time  sharing done at Stanford  University,
Massachusetts   Institute  of   Technology   and  Stanford   Research
Institute.

	In  general, research work  similar to this  proposal goes on
at the University  of Utah and and  at IBM; also the  development and
application  of three  dimensional computer  design systems  has been
underway for several years  at companies such  as General Motors  and
Lockheed.   However,  recent  research work at  Utah has  been mainly
directed  toward  the  development of  special  purpose  high quality
display hardware,   whereas  the work  outlined in  this proposal  is
directed  toward  the  problem  of  3D  representation  and  graphics
language.   Accordingly,  the relation of  our work to the work being
done at the University of  Utah, is the relation between  hardare and
software,    the two  matters  are overlapping  but  different.   The
relation of our work to graphics  in industry is symbiotic and is  in
fact  accurately  described   by  the  hackneyed  comparisons   of  a
university with  a corporation: theory vs.   practice,  knowledge vs.
production, generality  vs.   practicality;  not too  surprising  the
General  Motors and  the  Lockheed systems  have produced  mechanical
drawings  of  cars  and airplanes;  however  these  systems  have not
produced new languages or  algorithms; with the exception  of Appel's
hidden  line eliminator developed  at IBM,   Yorktown,   the graphics
software  technology  used  by  industry  began  in  university   and
government research.

	Another area  of related work  is computerized  2D mechanical
drawing.  At  present,    there  are  several commercially  available
automatic drafting systems (Cal Comp, Gerber, and so on)  which allow
a mechanical drawing  to be entered into a computer  and edited; word
for word  and line for line.  Such systems are indeed an advance over
manual drafting, however the research work we are  proposing would be
a further  advance directed to producing many  2D mechanical drawings
from the human design effort required to make one 3D drawing.

	Finally, there  are many  commercially available  engineering
programs   that   generate   mechanical   drawings   for   particular
applications.    For example,  the  Control Data  Corporation,  has a
system  that  does  structural  steel  detailing  and  that  produces
graphics in accord  with the drawing standards of  the American Steel
Association.  Such  special  purpose drawing  programs  require input
decks specifying  the exact  shape, dimensions and  location of  each
steel beam; the input decks  are prepared off line,  largely by hand.
A three  dimensional  design program,  such  as the  one  we  propose
creating,  would allow interactive design  and specification of steel
structures  and  would allow  easy  interfacing (in  effect,   FORMAT
statements) for  creating  particular data  required by  an  existing
program. So  the relation  of a  3D design program  to a  3D drafting
program  is simply sequential,   the one would  generate the input of
the other.
5. FACILITIES AT STANFORD A.I. LAB

The computer  facilities  of  the  Stanford  Artificial  Intelligence
Laboratory include the following equipment.

Central Processors:  Digital Equipment Corporation PDP-10 and PDP-6

Primary Store:       65K words of 1.7 microsecond DEC Core
	             65K words of 1 microsecond Ampex Core
                     131K words of 1.6 microsecond Ampex Core

Swapping Store:      Librascope disk (5 million words, 22 million
                     bits/second transfer rate)

File Store:          IBM 3330 disc file, 6 spindles (leased)

Peripherals:         4 DECtape drives, 2 mag tape drives (7 Chan. IBM),
	             line printer, Calcomp plotter, Xerox Graphics
		     Printer

Communications
    Processor:	     BBN IMP (Honeywell DDP-516) connected to the
		     ARPA network.

Terminals:           58 TV displays, 6 III displays, 3 IMLAC displays,
	             1 ARDS display, 15 Teletype terminals,
		     4 Texas Instrument terminals

Special  Equipment:  Audio  input  and  output  systems, hand-eye
                     equipment (4 TV cameras, 3 arms), remote-
                     controlled cart

The  bulk of  this  equipment  has  been purchased  through  contract
research support by  the Advanced Research Projects Agency, with some
additional funds provided by the National Science Foundation  and the
National  Institutes   of  Mental  Health.     These  facilities  are
generally adequate, but lack precision display  terminals of the sort
needed  to support  this project.  Consequently,  two  such terminals
have been budgeted in this proposal.




5A.  References


1)  Newman,  W.M.  and   Sproull, R.F.,   "Principals of Interactive 
    Computer Graphics", McGraw-Hill Book Company, New York, 1973.





ENDORSEMENTS:


		CO-PRINCIPAL	CO-PRINCIPAL	DEPT. HEAD	EXEC.OFFICER
		------------    ------------    ----------      ------------

NAME		J. McCarthy	Y. Wilks	R. Floyd	L. Earnest



SIGNATURE	_____________	_____________	_____________	_____________



TITLE		Professor,	Research	Chairman,	Executive
		Computer 	Associate	Computer	Officer,
		Science Dept.	A.I. Lab.	Science Dept.	A.I. Lab.



TELEPHONE NO.	(415) 321-2300	(415) 321-2300	(415) 321-2300	(415) 321-2300
		Ext. 4430	Ext. 3824	Ext. 2273	Ext. 4202

		Home: 321-7580	Home: 327-4742	Home: 493-5195	Home: 941-3984



DATE		August 24,1973	August 24,1973	August 24,1973	August 24,1973




BUDGET DETAIL


			RESEARCH GRANT PROPOSAL BUDGET
			TWO YEARS BEGINNING 1 JANUARY 1974


BUDGET CATEGORY						YEAR 1		YEAR 2
--------------------------------------------------------------------------------

I. SALARIES & WAGES:

	McCarthy, John,				       $     0 	       $     0 
	Professor,
	Principal Investigator

	Baumgart, Bruce G.,			        13,200		13,200
	Research Associate

	Mock, John S.,					 9,000		 9,000
	Research Programmer

	________,					 5,070		 5,304
	Student Research Ass't.,
	50% Acad. Yr., 100% Summer

	Baur, Q.,					 1,834		 1,834
	Secretary, 20%

	Reserve For Salary Increases			 1,601		 3,316
	@ 5.5% per year
                                                       _______         _______
  TOTAL SALARIES				       $30,705         $32,654

II. STAFF BENEFITS:

	1-1-74 to 8-31-74 @ 17.0%			 3,480
	9-1-74 to 8-31-75 @ 18.3%			 1,873		 3,984
	9-1-75 thereafter @ 19.3%			    	 	 2,101
						       _______         _______
							$5,353		$6,085

III. TRAVEL:

	DOMESTIC -
		Local		150
		East Coast	450
				---			  $600		  $600

IV. CAPITAL EQUIPMENT:

	(2) System Concepts Delta 1
	    Display Terminals or equivalent	       $75,000		     0

V. EQUIPMENT RENTAL (IBM DISK)				$7,500		$7,500

VI. EXPENDABLE MATERIALS & SERVICES:

	A. Telephone Service	480
	B. Office supplies	600
				---			$1,080		$1,080

VII. PUBLICATION COSTS:

	2 Papers @ 500ea				$1,000		$1,000

VIII. TOTAL DIRECT COSTS:

	(Items I thru VII less IV)		       $46,238         $48,919

IX. INDIRECT COSTS:

	On Campus - 47% of NTDC			       $21,732	       $22,992

X. TOTAL COSTS:

	(Items IV+VIII+IX)			      $142,970	       $71,911
						      --------         -------
6.  BIOGRAPHIES.

JOHN McCARTHY

BORN:	September 4, 1927 in Boston, Massachusetts

EDUCATION:

	B.S., (Mathematics) California Institute of Technology, 1948.

	Ph.D. (Mathematics) Princeton University, 1951.

HONORS AND SOCIETIES:

	American Mathematical Society

	Association for Computing Machinery

	Sigma Xi

	Sloan Fellow in Physical Science, 1957-59

	ACM National Lecturer, 1961

	IEEE

PROFESSIONAL EXPERIENCE:

	Proctor Fellow, Princeton University, 1950-51.

	Higgins Research Instructor in Mathematics,
	  Princeton University, 1951,53.

	Acting Assistant Professor of Mathematics,
	  Stanford University, Sept. 1953 - Jan. 1955.

	Assistant Professor of Mathematics, Dartmouth
	  College, Feb. 1955 - June 1958.

	Assistant Professor of Communication Science,
	  M.I.T., 1958 - 196l.

	Associate Professor of Communication Science,
	  M.I.T., 1961 - 1962.

	Professor of Computer Science
	  Stanford University, 1962 - present

PROFESSIONAL RESPONSIBILITIES AND SCIENTIFIC INTERESTS:

	With Marvin Minsky organized and directed the Artificial
	  Intelligence Project at M.I.T.

	Organized and directs Stanfod Artificial Intelligence
	  Laboratory

	Developed the LISP programming system for computing with
	  symbolic expressions, participated in the development
	  of the ALGOL 58 and the ALGOL 60 languages.

	Present scientific work is in the fields of Artificial
	  Intelligence, Computation with Symbolic Expressions,
	  Mathematical Theory of Computation, Time-Sharing
	  computer systems.

                           ⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗


BRUCE G. BAUMGART

BORN:	August 7, 1946 in Chicago, Illinois

EDUCATION:

	B.A. (Applied Math - Cum Laude) Harvard University, 1968.

PROFESSIONAL EXPERIENCE:

	Research Assistant, Harvard University, Physics Department,
	  1965 - 1968.

	Research Programmer, Stanford Artificial Intelligence
	  Laboratory, 1968 - 1972.

	Research Assistant, Stanford University, Computer Science
	  Department, Artificial Intelligence Laboratory, 1972 - present.

7.  BIBLIOGRAPHY.

JOHN McCARTHY					      --------         -------

	1.  "Projection Operators and Partial Differential 
		Equations", Ph.d. Thesis, Princeton University, 
		1951.

	2.  "A Method for the Calculation of Limit Cycles by
		Successive Approximation" in Contributions
		to the Theory of Nonlinear Oscillations II,
		Annals of Mathematics Study No. 29,
		Princeton University, 1952, pp. 75-79.

	3.  "An Everywhere Continuous Nowhere Differentiable
		Function", American Mathematical Monthly,
		December 1953, p. 709.

	4.  "A Nuclear Reactor for Rockets", Jet Propulsion,
		January 1954.

	5.  "The Inversion of Functions Defined by Turing
		Machines", in Automata Studies, Annals of
		Mathematics Study No. 34., Princeton University
		1956, pp. 177-181.

	6.  Coeditor with Dr. Claude E. Shannon of Automata
		Studies, Annals of Mathematical Study No. 34,
		Princeton University, 1956.

	7.  "Recursive Functions of Symbolic Expressions and
		their Computation by Machine", Comm. ACM,
		April 1960.

	8.  "Programs with Common Sense", Proc. Teddington Conf.
		on Mechanization of Thought Processes", H.M.
		Stationary Office, 1960.

	9.  (with 12 others) "ALGOL 60", Comm. ACM, May 1960
		and Jan. 1963, and Numerische Mathematik,
		March 1960.

       10.  "A Basis for Mathematical Theory of Computation",
		Proc. Western Joint Computer Conf., May 1961,
		pp. 225-238, and in Braffort and Hirschberg (eds.)
		Computer Programming and Formal Systems, North-
		Holland, Amsterdam, 1963.

       11.  "Time-Sharing Computer Systems" in Management and the
		Computer of the Future (Greenberger, ed.), MIT
		Press, 1962.

       12.  (with Abrahams, Edward, Hart, and Levin) LISP 1.5
		Programmers Manual, MIT Press, 1962.

       13.  "Computer Programs for Checking Mathematical Proofs",
		Amer. Math. Soc. Proc. Symposia in Pure Math.,
		Vol. 5, 1962.

       14.  (with Boilen, Fredkin, and Licklider) "A Time-Sharing
		Debugging System for a Small Computer", Proc.
		AFIPS 1963 Spring Joint Computer Conf., Spartan,
		Detroit, 1963.

       15.  (with F. Corbato and M. Daggett) "The Linking Segment
		Subprogram Language and Linking Loader 
		Programming Languages", Comm. ACM, July 1963.

       16.  "Towards a Mathematical Theory of Computation", Proc.
		IFIP Congress 62, North-Holland, Amsterdam, 1963.

       17.  "Problems in the Theory of Computation", Proc. IFIP
		Congress 65, 1965.

       18.  "Time-Sharing Computer Systems" in Conversational
		Computers (W. Orr, ed.), Wiley, 1966.

       19.  "Information", Scientific American, Sept. 1966.

       20.  "A Formal Description of a Subset of Algol", pp. l-12
		of Formal Language Description Languages for
		Computer Programming, T.B. Steel, Jr. (editor),
		North-Holland Publishing Co., Amsterdam, 1966.

       21.  (with D. Brian, G. Feldman, and J. Allen) "THOR - A
		Display Based Time-Sharing System", AFIPS Conf.
		Proc., Vol. 30 (FJCC), Thompson, Washington, D.C.,
		1967.

       22.  "Computer Control of a Hand and Eye", Proc. Third
		All-Union Conference on Automatic Control
		(Technical Cybernetics), Nauka, Moscow, Russia,
		1967.

       23.  (with J. Painter) "Correctness of a Compiler for
		Arithmetic Expressions", in Amer. Math. Soc.
		Proceedings of Symposia in Applied Mathematics,
		Mathematical Aspects of Computer Science, New
		York, 1967.

       24.  "Programs with Common Sense", in Semantic Information
		Processing (M. Minsky, ed.), MIT Press, 1968.

       25.  (with Earnest, Reddy, and Vicens) "A Computer with
		Hands, Eyes and Ears", Proc. AFIPS Conf., 1968
		(FJCC).

       26.  (with P. Hayes) "Some Philosophical Problems from
		the Standpoint of Artificial Intelligence",
		in Machine Intelligence 4 (D. Mitchie, ed.),
		American Elsevier, New York, 1969.

       27.  (with Z. Manna and A. Pneuli) "Formalization of
		Properties of Recursively Defined Functions",
		Proc. ACM Symposium on Computing Theory, May 1969.
		Also appeared in the Journal of the ACM, July 1970.

       28.  (with Z. Manna) "Properties of Programs and Partial
		Function Logic", in Machine Intelligence 5,
		Edinburgh University Press, 1970.



                          ⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗


BRUCE G. BAUMGART

	1.  "GEOMED -- A Geometric Editor", Stanford Artificial
		Intelligence Laboratory Operation Note,
		No. SAILON-68, May 1972.

   	2.  "Winged Edge Polyhedron Representation", Stanford
		Artificial Intelligence Memo No. AIM-179,
		October 1972.

	3.  "Image Contouring and Comparing", Stanford Artificial
		Intelligence Memo No. AIM-199, June 1973.